package com.sicheng.lc.周赛.分类.思维.数论;

import java.util.Arrays;

/**
 * @author zsc
 * @version 1.0
 * @date 2022/7/17 12:26
 */
public class 使数组可以被整除的最少删除次数 {
    public int minOperations(int[] nums, int[] numsDivide) {
        int gcd = numsDivide[0];
        for (int x : numsDivide) {
            gcd = gcd(gcd, x);
        }

        Arrays.sort(nums);
        for (int i = 0; i < nums.length; i++) {
            if (gcd % nums[i] == 0)
                return i;
        }
        return -1;


    }

    int gcd(int a, int b) {
        return b == 0 ? a : gcd(b, a % b);
    }
}
